A student about to embark on a primary teacher training course as a CS specialist should know, understand and be able to:
Code competently in at least two programming languages, which may both be 'visual'; at least one of these must allow the use of programming concepts such as selection, repetition, procedures, variables and relational operators.
Explain and use programming concepts such as selection, repetition, procedures, variables and relational operators.
Review and assess the quality of code. Find and correct errors in syntax and meaning.
Explain that computers are controlled by sequences of precise instructions called programs.
Explain that computers follow instructions blindly; hence the need for care and precision.
Represent algorithmic steps in multiple programming languages (e.g. Logo, Scratch)
Explain how and use programs to simulate environments to test hypothesis.
Explain and show how programs can be planned, tested and corrected and documented.
Explain how HTML constructs the rendering of a webpage
In addition to the above a student about to embark on a secondary teacher training course as a CS specialist should know, understand and be able to:
Programme competently in at least two programming languages, at least one of which must be textual.
Explain and use programming concepts such as selection, repetition, procedures, variables, relational operators, logical operators and functions.
Explain and use truth tables and Boolean valued variables.
Explain and use two-dimensional arrays (and higher).
Explain and use nested constructs (e.g. a loop that contains a conditional, and vice versa.
Explain the concept of procedures that call procedures.
Explain how low level languages work and when they are used, being able to give simple examples.
Explain that a program can be written to satisfy requirements and that they should be corrected if they do not meet these.
Successfully apply programming in solving Computing/Computer Science GCSE and A Level type problems.
Computers (all devices controlled by a processor) are controlled by sequences of instructions.
A computer program is like the narrative part of a story, and the computer's job is to do what the narrator says. Computers have no intelligence and so follow the narrator's instructions blindly.
Particular tasks can be accomplished by creating a program for a computer. Some computers allow their users to create their own programs.
Computers typically accept inputs, follow a stored sequence of instructions and produce outputs.
A computer program is a sequence of instructions written to perform a specified task with a computer.
The idea of a program as a sequence of statements written in a programming language.
One or more mechanisms for selecting which statement sequence will be executed, based upon the value of some data item.
One or more mechanisms for repeating the execution of a sequence of statements, and using the value of some data item to control the number of times the sequence is repeated.
Programs can model and simulate environments to answer "What if" questions.
Programs can be created using visual tools. Programs work with different types of data. They can use a variety of control structures.
Programs are unambiguous and that care and precision is necessary to avoid errors.
Programs are developed according to a plan and then tested. Programs are corrected if they fail these tests.
The behaviour of a program should be planned.
A well-written program tells the reader the story of how it works, both in the code and the human-readable comments.
A web page is an HTML script that constructs a visual appearance. It is also the carrier for other code that can be processed by the browser.
Computers can be programmed so they appear to respond 'intelligently' to certain inputs.
Subject Knowledge Requirements for Entry into CS Teacher Training
SKR2 = Programming
A student about to embark on a primary teacher training course as a CS specialist should know, understand and be able to:
In addition to the above a student about to embark on a secondary teacher training course as a CS specialist should know, understand and be able to:
"Teaching Your Kids how to Write Computer Programs" - Marshall Brain
"36 Resources to Help You Teach Kids Programming"
http://www.wired.co.uk/news/archive/2012-07/13/tangible-coding-workshops
http://inventwithpython.com/blog/2012/03/03/nobody-wants-to-learn-how-to-program/
http://www.programr.com/
http://www.codeavengers.com/
http://www.codecademy.com/
http://www.codeyear.com/
http://codeclub.org.uk/
The following is from the Computing At School's Computer Science Curriculum
Programs
Key Stage 1
Key Stage 2
Key Stage 3
Plus